package com.dgz.system.service.exam;

import com.dgz.system.domain.exam.dto.ExamAddDto;
import com.dgz.system.domain.exam.dto.ExamEditDto;
import com.dgz.system.domain.exam.dto.ExamQueryDto;
import com.dgz.system.domain.exam.dto.ExamQuestionAddDto;
import com.dgz.system.domain.exam.vo.ExamDetailVO;
import com.dgz.system.domain.exam.vo.ExamVO;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: DongGuoZhen
 * @Date: 2025/04/06/16:10
 * @Description:
 */
@Service
public interface IExamService {
    List<ExamVO> list(ExamQueryDto examQueryDto);

    String add(ExamAddDto examAddDto);

    boolean questionAdd(ExamQuestionAddDto examQuestionAddDto);

    ExamDetailVO detail(Long examId);

    int edit(ExamEditDto examAddDto);

    int questionDelete(Long examId, Long questionId);

    @Transactional
    int delete(Long examId);

    int publish(Long examId);

    int cancelPublish(Long examId);
}
